package com.itc.bi.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import lombok.Data;

import java.util.Date;

@TableName("tb_data_set_column")
@ApiModel(value = "数据集表头",description = "数据集表头")
@Data
public class DataSetColumnEntity {
    @TableId(value = "id",type = IdType.ASSIGN_ID)
    @ApiModelProperty("主键")
    private Long id;

    @TableField(value = "data_set_id")
    @ApiModelProperty(value = "数据集ID")
    private Long dataSetId;

    @TableField(value = "column_name")
    @ApiModelProperty(value = "字段名")
    private String columnName;

    @TableField(value = "column_comment")
    @ApiModelProperty(value = "字段注释")
    private String columnComment;

    @TableField(value = "column_type")
    @ApiModelProperty(value = "字段类型")
    private String columnType;

    @TableField(value = "column_position")
    @ApiModelProperty(value = "字段位置")
    private Integer columnPosition;

    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    @ApiModelProperty(value = "创建时间",hidden = true)
    private Date createTime;

    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    @TableField(value = "update_time",fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    @ApiModelProperty(value = "修改时间",hidden = true)
    private Date updateTime;

    @TableField(exist = false)
    @ApiModelProperty(value = "数据集名称")
    private Long dataSetName;

    @TableField(exist = false)
    @ApiModelProperty(value = "字段大类型")
    private String type;

    @TableField(value = "step_num")
    @ApiModelProperty(value = "加工步骤")
    private Integer stepNum;
}
